package com.lancoo.cvas.arrangecourse.entities;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @Description 排课规则
 * @Author Fortysun
 * @Date 2023/7/14 16:30
 **/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class BaseRule {
    //跨校区排课规则，0各校区独立排课 1全校统一排课
    Integer crossCampusOption;

    //课程分布，a无需求，b集中(同一门课程连续两天范围内上)，c分散
    String courseDistribution;
    //教师上课分布，a无需求，b集中(教师集中在同一天的上午、或下午上课)，c分散
    String teacherDistribution;

    //教师每天上课最大节数，默认4，范围4-8
    Integer maxSection;

    //环节排课，a无需求，b环节所在周次不怕苦
    String segmentArrange;
    //场地禁排，a不启用，b启用
    String roomRuleEnable;
    //教师禁排，a不启用，b启用
    String teacherRuleEnable;
    //教师单日上课限制，a不启用，b启用
    String teacherLimitEnable;
    //行政班禁排，a不启用，b启用
    String classRuleEnable;
    //教学班禁排，a不启用，b启用
    String teachingClassRuleEnable;
    //课程禁排，a不启用，b启用
    String courseRuleEnable;

    //课时禁排，a不启用，b启用
    String timeRuleEnable;


    //跨校区时间，a不启用，b 半天    c 一天
    String crossCampusRule;


    //场地固排，a不启用，b启用
    String roomFixEnable;
    //教师固排，a不启用，b启用
    String teacherFixEnable;
    //行政班固排，a不启用，b启用
    String classFixEnable;
    //教学班固排，a不启用，b启用
    String teachingClassFixEnable;
    //课程固排，a不启用，b启用
    String courseFixEnable;


    //基础规则，a不启用，b启用
    String baseRuleEnable;

    //手动调整 教室容量判断，a不启用，b启用
    String capacityCheck;


}
